---
title: MindsDB Installation for Development
sidebarTitle: MindsDB Installation for Development
---

If you want to contribute to the development of MindsDB, you need to install from source.

<Info>
If you do not want to contribute to the development of MindsDB but simply install and use it, then [install MindsDB via Docker](/setup/self-hosted/docker).
</Info>

## Install MindsDB for Development

Here are the steps to install MindsDB from source. You can either
follow the steps below or visit the provided link.

<Info>
Before installing MindsDB from source, ensure that you use one of the following Python versions: `3.8.x`, `3.9.x`, 3.10.x`, `3.11.x`.
</Info>

1. Fork the [MindsDB repository from GitHub](https://github.com/mindsdb/mindsdb).

2. Clone the fork locally:

   ```bash
   git clone https://github.com/<username>/mindsdb.git
   ```

3. Create a virtual environment:

   ```bash
   python -m venv mindsdb-venv
   ```

4. Activate the virtual environment:

   ```bash
   source mindsdb-venv/bin/activate
   ```

5. Install MindsDB with its local development dependencies:

   Install dependencies:

   ```bash
   cd mindsdb
   pip install -e .
   pip install -r requirements/requirements-dev.txt
   ```
   
6. Start MindsDB:
   
   ```bash
   python -m mindsdb
   ```

   <Tip>
   By default, MindsDB starts the `http` and `mysql` APIs. If you want to use Mongo API, you will need to provide that as a parameter to `--api`. You can do it as follows:

   ```bash
   python -m mindsdb --api=http,mongodb,mysql
   ```
   </Tip>

<Info>
Alternatively, you can use a makefile to install dependencies and start MindsDB:
  
   ```bash
    make install_mindsdb
    make run_mindsdb
    ```
</Info>

Now you should see the following message in the console:

```
...

mindsdb.api.http.initialize:  - GUI available at http://127.0.0.1:47334/
mindsdb.api.mysql.mysql_proxy.mysql_proxy: Starting MindsDB Mysql proxy server on tcp://127.0.0.1:47335
mindsdb.api.mysql.mysql_proxy.mysql_proxy: Waiting for incoming connections...
mindsdb: mysql API: started on 47335
mindsdb: http API: started on 47334
```

You can access the MindsDB Editor at `localhost:47334`.

<Tip>
If you get the `ImportError: failed to find libmagic` error, you should install the `libmagic` manually by running one of the commands below:

```bash
pip install python-magic-bin # for linux and windows
brew install libmagic # for macOS
```
</Tip>

## Install dependencies

The dependencies for many of the data or ML integrations are not installed by default.

If you want to use a data or AI/ML integration whose dependencies are not available by default, install it by running this command:

```
pip install .[handler_name]
```

<Tip>
You can find all available [handlers here](https://github.com/mindsdb/mindsdb/tree/staging/mindsdb/integrations/handlers).
</Tip>

## What's Next?

Now that you installed and started MindsDB locally, go ahead and find out how to create and train a model using the [`CREATE MODEL`](/sql/create/model) statement.

Check out the [Use Cases](/use-cases/overview) section to follow tutorials that cover Large Language Models, Chatbots, Time Series, Classification, and Regression models, Semantic Search, and more.
